An Approach for Proving the Correctness of Inspector/Executor Transformations

نویسندگان

  • Michael Norrish
  • Michelle Mills Strout
چکیده

To take advantage of multicore parallelism, programmers and compilers rewrite, or transform, programs to expose loop-level parallelism. Showing the correctness, or legality, of such program transformations enables their incorporation into compilers. However, the correctness of inspector/executor strategies, which develop parallel schedules at runtime for computations with nonaffine array accesses, rests on the correctness of the inspector code itself. Since inspector code is often provided in a run-time library, showing the correctness of an inspector/executor transformation in a compiler requires proving the correctness of any hand-written or compiler-generated inspector code as well. In this paper, we present a formally defined language (called PseudoC) for representing loops with indirect array accesses. We describe how using this language, where the reads and writes in array assignments are distinguished, it is be possible to formally prove the correctness of a wavefront parallelism inspector in HOL4. The key idea is to reason about the equivalence of the original code and the inspector/executor code based on operational semantics for the PseudoC grammar and properties of an executable action graph representation of the original and executor loops.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Runtime Address Space Computation for SDSM Systems

This paper explores the benefits and limitations of using a inspector/executor approach for Software Distributed Shared Memory (SDSM) systems. The role of the inspector is to obtain a description of the address space accessed during the execution of parallel loops. The information collected by the inspector will enable the runtime to optimize the movement of shared data that will happen during ...

متن کامل

A New Optimization Technique for the Inspector-Executor Method

This paper presents our HPF compiler using our modified inspector-executor method for implementing accesses to a distributed array. In our modified method, a compiler runs an inspector during compile time to obtain the information of data dependency among node processors, and it uses that information to optimize communication code included in the executor. This paper presents our idea, performa...

متن کامل

Computer Science Technical Report Enabling Code Generation within the Sparse Polyhedral Framework

Loop transformation frameworks based on the polyhedral model use libraries such as Polylib, ISL, and Omega to represent and manipulate polyhedra and use tools like CLooG to generate loops that scan the modified polyhedra. Most of these libraries are restricted to iteration space sets and memory/array access functions with affine constraints that preclude the specification of run-time reordering...

متن کامل

Run-Time Parallelization of Irregular DOACROSS Loops

Dependencies between iterations of loop structures cannot always be determined at compile-time because they may depend on input data which is known only at run-time. A prime example is a loop accessing an array where the array indices are themselves functions of another array determined only at run-time. To parallelize such loops, it is necessary to perform a run-time analysis. We describe a ne...

متن کامل

Steps toward the weak higher category of weak higher categories in the globular setting

We start this article by rebuilding higher operads of weak higher transformations, and correct those in cite{Cambat}. As in cite{Cambat} we propose an operadic approach for weak higher $n$-transformations, for each $ninmathbb{N}$, where such weak higher $n$-transformations are seen as algebras for specific contractible higher operads. The last chapter of this article asserts that, up to precise...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2014